package utils

//
//import (
//	"github.com/gin-gonic/gin"
//	"mine-info-server/global"
//)
//
//func GetClaims(c *gin.Context) (*systemReq.CustomClaims, error) {
//	token := c.Request.Header.Get("x-token")
//	j := NewJWT()
//	claims, err := j.ParseToken(token)
//	if err != nil {
//		global.GVA_LOG.Error("从Gin的Context中获取从jwt解析信息失败, 请检查请求头是否存在x-token且claims是否为规定结构")
//	}
//	return claims, err
//}
//
//// 从Gin的Context中获取从jwt解析出来的用户ID
//func GetUserID(c *gin.Context) uint {
//	if claims, exists := c.Get("claims"); !exists {
//		if cl, err := GetClaims(c); err != nil {
//			return 0
//		} else {
//			return cl.ID
//		}
//	} else {
//		waitUse := claims.(*systemReq.CustomClaims)
//		return waitUse.ID
//	}
//}
//
//// 从Gin的Context中获取从jwt解析出来的用户UUID
//func GetUserName(c *gin.Context) string {
//	if claims, exists := c.Get("claims"); !exists {
//		if cl, err := GetClaims(c); err != nil {
//			return ""
//		} else {
//			return cl.Username
//		}
//	} else {
//		waitUse := claims.(*systemReq.CustomClaims)
//		return waitUse.Username
//	}
//}
//
//// 从Gin的Context中获取从jwt解析出来的用户角色id
//func GetUserAuthorityId(c *gin.Context) string {
//	if claims, exists := c.Get("claims"); !exists {
//		if cl, err := GetClaims(c); err != nil {
//			return ""
//		} else {
//			return cl.AuthorityId
//		}
//	} else {
//		waitUse := claims.(*systemReq.CustomClaims)
//		return waitUse.AuthorityId
//	}
//}
//
//// 从Gin的Context中获取从jwt解析出来的用户角色id
//func GetUserInfo(c *gin.Context) *systemReq.CustomClaims {
//	if claims, exists := c.Get("claims"); !exists {
//		if cl, err := GetClaims(c); err != nil {
//			return nil
//		} else {
//			return cl
//		}
//	} else {
//		waitUse := claims.(*systemReq.CustomClaims)
//		return waitUse
//	}
//}
//
//// 从Gin的Context中获取从jwt解析出来的用户id和角色id
//func GetUserIdAndRoleId(c *gin.Context) *UserIdAndRoleId {
//	if claims, exists := c.Get("claims"); !exists {
//		if cl, err := GetClaims(c); err != nil {
//			return nil
//		} else {
//			return &UserIdAndRoleId{
//				UserId: cl.ID,
//				RoleId: cl.AuthorityId,
//			}
//		}
//	} else {
//		waitUse := claims.(*systemReq.CustomClaims)
//		return &UserIdAndRoleId{
//			UserId: waitUse.ID,
//			RoleId: waitUse.AuthorityId,
//		}
//	}
//}
//
//// 从Gin的Context中获取从jwt解析出来的用户id和角色id
//func GetUserNickNameAndRoleId(c *gin.Context) (string, string) {
//	if claims, exists := c.Get("claims"); !exists {
//		if cl, err := GetClaims(c); err != nil {
//			return "", ""
//		} else {
//			return cl.NickName, cl.AuthorityId
//		}
//	} else {
//		waitUse := claims.(*systemReq.CustomClaims)
//		return waitUse.NickName, waitUse.AuthorityId
//	}
//}
//
//// 从Gin的Context中获取从jwt解析出来的用户id和角色id
//func GetUserNickNameIdAndRoleId(c *gin.Context) *UserNameIdAndRoleId {
//	if claims, exists := c.Get("claims"); !exists {
//		if cl, err := GetClaims(c); err != nil {
//			return nil
//		} else {
//			return &UserNameIdAndRoleId{
//				UserIdAndRoleId: UserIdAndRoleId{
//					UserId: cl.ID,
//					RoleId: cl.AuthorityId,
//				},
//				NickName: cl.NickName,
//			}
//		}
//	} else {
//		waitUse := claims.(*systemReq.CustomClaims)
//		return &UserNameIdAndRoleId{
//			UserIdAndRoleId: UserIdAndRoleId{
//				UserId: waitUse.ID,
//				RoleId: waitUse.AuthorityId,
//			},
//			NickName: waitUse.NickName,
//		}
//	}
//}
//
//// 从Gin的Context中获取从jwt解析出来的用户姓名
//func GetUserNickName(c *gin.Context) string {
//	if claims, exists := c.Get("claims"); !exists {
//		if cl, err := GetClaims(c); err != nil {
//			return ""
//		} else {
//			return cl.NickName
//		}
//	} else {
//		waitUse := claims.(*systemReq.CustomClaims)
//		return waitUse.NickName
//	}
//}
//
//type UserIdAndRoleId struct {
//	UserId uint
//	RoleId string
//}
//
//type UserNameIdAndRoleId struct {
//	UserIdAndRoleId
//	NickName string
//}
